package org.six11.olive3.net;

/**
 * This is a collection of strings used as message or parameter names in Olive messages.
 * 
 * @author Gabe Johnson <johnsogg@cmu.edu>
 * 
 */
public abstract class MessageNames {

  
  /* Example message and related constants. Note the re-use of some constants like PARAM_KIND.
   *
   * <pre>
   * favorite_things ( userID=4 name="Elroy" ) {
   *   ice_cream vanilla topping="fudge" topping="cherry"
   *   pet kind="dog" name="Fluffy"
   * }
   * 
   * MSG_FAVORITE_THINGS = "favorite_things"
   * PARAM_USER_ID = "userID"
   * PARAM_NAME = "name"
   * STMT_ICE_CREAM = "ice_cream"
   * PARAM_TOPPING = "topping"
   * PARAM_KIND = "kind"
   * </pre>
   */
  public final static String ALL = "ALL"; // a stand in for 'any of the MSG_*' types.

  public final static String MSG_LAST_MSG_IDX = "last_msg_idx";
  public final static String MSG_LOGIN = "login";
  public final static String MSG_LOGIN_REPLY = "login_reply";
  public final static String MSG_PEN = "pen";
  public final static String MSG_REQUEST_DOWNLOAD = "request_download";
  public static final String MSG_STATUS = "status";

  public final static String PARAM_MESSAGE_INDEX = "msg_idx";
  public final static String PARAM_USER_ID = "user";

  public static final String STMT_SCORE = "score";

}
